草庐IT

JavaScript ecma6 将普通函数更改为箭头函数

全部标签

javascript - Function() 构造函数是否没有像 eval 那样被 V8 优化?

我们正在尝试一种通过WebSockets接收网络组件的方法。这些组件包含自定义脚本,它们应该在组件内的上下文中运行。简而言之,我们有一些脚本字符串并想要运行它们。现在我们为此使用eval,像这样:functionctxEval(ctx,__script){eval(__script);//returnthingswiththectx}并按预期工作,但我读到任何包含eval的函数都没有被V8优化。我想像这样将它转换为newFunction():newFunction("ctx",__script)(ctx);这样我可以实现与上面的ctxEval函数相同的效果。我们知道Function是e

javascript - d3.js 在悬停时传递多个函数

我使用教程在鼠标悬停时获得此功能:functionarcTween(outerRadius,delay){returnfunction(){d3.select(this).transition().delay(delay).attrTween("d",function(d){vari=d3.interpolate(d.outerRadius,outerRadius);returnfunction(t){d.outerRadius=i(t);returnarc(d);};});};}然后我以这种方式将其添加到饼图的各个部分:.on("mouseover",arcTween(outerRa

javascript - Firebase 云函数 http 请求到另一个 firebase 云函数

我有一个具有主要功能的主要Firebase云功能。但是我需要创建另一个更具体的,它使用主要云功能上的功能。我可以使用免费帐户从一个firebase云函数请求一个httpPost或Get到另一个firebase云函数吗?我试图做到这一点,但我收到“ENOTFOUND”消息,我想知道我的代码是否有问题,或者这只是免费帐户的限制。索引.js'usestrict';constfunctions=require('firebase-functions');constexpress=require('express');constapp=express();app.post('/test',fun

javascript - 如何固定输入的位置,使其始终位于屏幕居中但其大小可以更改的元素下方?

我的UI中有一个名为SkyElement的元素,它始终在我的UI中垂直和水平居中。我还有一个输入,称为PencilInput,我希望它始终位于SkyElement下方。在UI中,用户可以更改SkyElement的大小(宽度和高度),我希望PencilInput位于下方>SkyElement,无论大小。现在,无论大小如何,PencilInput都显示在SkyElement上方。在我的render函数中:PencilInput的HTML:在我的CSS中:@mixinabsolute-center{display:block;position:absolute;top:50%;left:50

javascript - angular 中 .next() 函数的解释

import{Component,Input,Output,EventEmitter}from'@angular/core';varcolorPickerCss="app/css/ui/color-picker.css";varcolorPickerTemplate="app/partials/color-picker.html";@Component({selector:'color-picker',styleUrls:[colorPickerCss],templateUrl:colorPickerTemplate})exportclassColorPicker{@Input()co

javascript - 带有箭头函数的事件处理程序如何实现上下文绑定(bind)

我知道this绑定(bind)的一般理论(函数调用点很重要,隐式绑定(bind),显式绑定(bind)等...)以及解决React中this绑定(bind)问题的方法,所以它总是指向我想要的this是什么(在构造函数中绑定(bind)、箭头函数等),但我正在努力获得内部机制。看看这两段代码:classdemoextendsReact.component{goToStore(event){console.log(this)}render(){this.goToStore(e)}>test}}对比classdemoextendsReact.component{goToStore(event

javascript - lodash 的过滤函数是否带上下文?

我看过lodashfilter文档并且不清楚第三个参数是否是上下文。我正在使用cytoscape插件(dagre),它似乎将this作为第3个参数传递。当我在调用过滤器方法之前暂停执行时,定义了this。但是在调用中this是未定义的。我查看了underscorefilter文档,它似乎将第三个参数作为上下文。所以我有点猜测该插件最初使用下划线然后可能更改为lodash。我正在从事的项目正在使用lodash。我当时无法理解为什么this为null。它可能是特定于项目的,但我只想弄清楚lodash过滤器的第三个参数。lodash的filter的定义和underscore的filter的定

javascript - ReactJS:为什么在setState更改状态时调用构造函数

我是ReactJS的新手,我制作了一个应用程序,您可以在其中提交姓名和电子邮件。姓名和邮件应显示在页面底部的列表中。它会显示一小段时间,然后调用构造函数并清除状态和列表。为什么在状态改变后调用构造函数?我以为构造函数只运行一次,然后render方法在setState()更改状态后运行。classAppextendsReact.Component{constructor(props){super(props);console.log("Appconstructor");this.state={signedUpPeople:[]};this.signUp=this.signUp.bind(

javascript - 根据数字使用 Javascript 更改文本颜色

如果答案是“7”,我需要将文本颜色更改为红色;如果答案是“13”或“24”,我需要将文本颜色更改为绿色。我尝试了几种不同的方法,但似乎无法正常工作。我不知道是否有人知道我做错了什么,但我们将不胜感激。do{varluckyNumber=prompt('Whatisyourluckynumber?',"");luckyNumber=parseInt(luckyNumber,10);}while(isNaN(luckyNumber));if(luckyNumber==7){document.write("Hey,7ismyluckynumbertoo!").style.color="red

javascript - React Router v4 Router 组件中的所有内容都会在每次路由更改时重新呈现

我试图更好地理解为什么每当ReactRouterv5中的路由发生变化时我的所有组件都会重新渲染。请注意,这些组件只是重新渲染,而不是重新安装。当我在开发工具中打开React扩展并选中HighlightUpdates复选框时,我可以看到在更改路由时我的所有组件都被勾勒出来,甚至是比路由匹配级别更高的组件:在这个简单的示例中,我希望更改路由不会重新呈现MyHeader组件,因为没有任何更改。但是,我仍然会看到开发工具的亮点。我认为这是预期的,因为文档中的所有示例都表现出相同的行为。我的问题有两个方面。1)使像MyHeader这样的组件重新渲染的实际原因是什么?似乎没有任何Prop或状态正在